package com.xiaohe66.demo.spring.slp;

/**
 * @author xiaohe
 * @since 2023.02.10 13:39
 */
public interface AnimalFactory {

    /**
     * 这个类的这个方法会被 Spring 创建的代理类实现，最终会调用 BeanFactory 的 getBean(String) 方法获取真正需要的实例
     *
     * @param type 这个参数是 beanName，也可以不使用 String，也可以考虑使用枚举类
     * @return 返回值是 beanName 对应的实例类
     */
    Animal getInstance(String type);

}
